package vn.fpt.fsoft.entities;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;

/**
 * @author MinhNC7
 *
 */
@Entity
@Table(name = "Premise_JCPOffices")
public class PreJCPOffices {
	private int preDetailID;
	private String accreditation;
	private boolean mediaContact;
	private String mediaConName;
	private String localGrapIssues;
	private String localGrapNote;
	private String jcpOffice;
	private boolean cateringFact;
	private int cateringCont;
	private String cateringType;
	private String isNetwork;
	private String clientITFacDetail;
	private boolean roomAvailable;
	private boolean volunOpport;
	private Premise premise;

	public PreJCPOffices(int preDetailID, String accreditation,
			boolean mediaContact, String mediaConName, String localGrapIssues,
			String localGrapNote, String jcpOffice, boolean cateringFact,
			int cateringCont, String cateringType, String isNetwork,
			String clientITFacDetail, boolean roomAvailable,
			boolean volunOpport, Premise premise) {
		this.preDetailID = preDetailID;
		this.accreditation = accreditation;
		this.mediaContact = mediaContact;
		this.mediaConName = mediaConName;
		this.localGrapIssues = localGrapIssues;
		this.localGrapNote = localGrapNote;
		this.jcpOffice = jcpOffice;
		this.cateringFact = cateringFact;
		this.cateringCont = cateringCont;
		this.cateringType = cateringType;
		this.isNetwork = isNetwork;
		this.clientITFacDetail = clientITFacDetail;
		this.roomAvailable = roomAvailable;
		this.volunOpport = volunOpport;
		this.premise = premise;
	}
	public PreJCPOffices(){
		
	}
	
	@Id
	@GeneratedValue(strategy = GenerationType.IDENTITY)
	@Column(name = "PremiseDetailID")	
	public int getPreDetailID() {
		return preDetailID;
	}
	public void setPreDetailID(int preDetailID) {
		this.preDetailID = preDetailID;
	}
	
	@Column(name ="Accreditations")
	public String getAccreditation() {
		return accreditation;
	}
	public void setAccreditation(String accreditation) {
		this.accreditation = accreditation;
	}
	
	@Column(name = "MediaContact")
	public boolean isMediaContact() {
		return mediaContact;
	}
	public void setMediaContact(boolean mediaContact) {
		this.mediaContact = mediaContact;
	}
	
	@Column(name = "MediaContactName")
	public String getMediaConName() {
		return mediaConName;
	}
	public void setMediaConName(String mediaConName) {
		this.mediaConName = mediaConName;
	}
	
	@Column(name = "LocalDemographicIssue")
	public String getLocalGrapIssues() {
		return localGrapIssues;
	}
	public void setLocalGrapIssues(String localGrapIssues) {
		this.localGrapIssues = localGrapIssues;
	}
	
	@Column(name = "LocalDemographicNotes")
	public String getLocalGrapNote() {
		return localGrapNote;
	}
	public void setLocalGrapNote(String localGrapNote) {
		this.localGrapNote = localGrapNote;
	}
	
	@Column(name = "JCPOffices")
	public String getJcpOffice() {
		return jcpOffice;
	}
	public void setJcpOffice(String jcpOffice) {
		this.jcpOffice = jcpOffice;
	}
	
	@Column(name = "CateringFacilities")
	public boolean isCateringFact() {
		return cateringFact;
	}
	public void setCateringFact(boolean cateringFact) {
		this.cateringFact = cateringFact;
	}
	
	@Column(name = "CateRingContact")
	public int getCateringCont() {
		return cateringCont;
	}
	public void setCateringCont(int cateringCont) {
		this.cateringCont = cateringCont;
	}
	
	@Column(name = "CateringType")
	public String getCateringType() {
		return cateringType;
	}
	public void setCateringType(String cateringType) {
		this.cateringType = cateringType;
	}
	
	@Column(name = "IS_Network")
	public String getIsNetwork() {
		return isNetwork;
	}
	public void setIsNetwork(String isNetwork) {
		this.isNetwork = isNetwork;
	}
	
	@Column(name = "ClientITFacDetails")
	public String getClientITFacDetail() {
		return clientITFacDetail;
	}
	public void setClientITFacDetail(String clientITFacDetail) {
		this.clientITFacDetail = clientITFacDetail;
	}
	
	@Column(name = "RoomAvailability")
	public boolean isRoomAvailable() {
		return roomAvailable;
	}
	public void setRoomAvailable(boolean roomAvailable) {
		this.roomAvailable = roomAvailable;
	}
	
	@Column(name = "VolunOpport")
	public boolean isVolunOpport() {
		return volunOpport;
	}
	public void setVolunOpport(boolean volunOpport) {
		this.volunOpport = volunOpport;
	}
	
	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "Premiseid", nullable = true)
	public Premise getPremise() {
		return premise;
	}
	public void setPremise(Premise premise) {
		this.premise = premise;
	}
	
}
